Traditional television and the Internet are both used to deliver audio/video (AV) content, such as entertainment and educational programs, to viewers. Television programming and other AV content is available not only from traditional sources like broadcast and cable television, but also from computers and mobile computing devices such as smart phones, tablets and portable computers. These devices may receive content via wired or wireless communications networks, in a home, business, or elsewhere.
Adaptive streaming, also known as adaptive bit rate (ABR) streaming, is a delivery method for streaming video over Internet Protocol (IP). ABR streaming is conventionally based on a series of short Hypertext Transfer Protocol (HTTP) progressive downloads which is applicable to the delivery of both live and on demand content. Examples of ABR streaming protocols include HTTP Live Streaming (HLS), MPEG Dynamic Adaptive Streaming over HTTP (DASH), Microsoft Smooth Streaming, Adobe HTTP Dynamic Streaming (HDS), and the like. An ABR streaming client performs the media download as a series of very small files. The content is cut into many small segments (chunks) and encoded into the desired formats. A chunk is a small file containing a short video segment (typically 2 to 10 seconds) along with associated audio and other data. Adaptive streaming relies generally on the use of HTTP as the transport protocol for these video chunks; however, other protocols may be used as well (e.g., Real Time Messaging Protocol (RTMP) is used in HDS).
Playback is enabled by creating a playlist or manifest that includes a series of uniform resource identifiers (URIs). For example, a uniform resource locator (URL) is a species of URI. Each URI is usable by the client to request a single HTTP chunk. A server, such as the origin server 5, stores several chunk sizes for each segment in time. The client predicts the available bandwidth and requests the best chunk size using the appropriate URI. Since the client is controlling when the content is requested, this is seen as a client-pull mechanism, compared to traditional streaming where the server pushes the content. Using URIs to create the playlist enables very simple client devices using web browser-type interfaces.
Adaptive streaming was developed for video distribution over the Internet, and has long been used (e.g., by Internet video service providers such as Netflix, Hulu, YouTube, and the like) to stream AV content, such as video content embedded in a web site, to an ABR streaming client upon request. The ABR client receives the AV content for display to a user. In order to deal with unpredictable network performance characteristics typical of Internet use, ABR streaming includes the ability to switch between different encodings of the same content. Depending upon available bandwidth, an ABR streaming client can choose an optimum encoding.
A number of multiple service operators (MSOs), such as cable and broadband service providers who provide both cable and Internet services to subscribers, operate content delivery networks (CDNs) in which Internet Protocol (IP) is used for delivery of television programs (i.e., IPTV) over a digital packet-switched network. In some IPTV networks, adaptive bit rate streaming can be used for delivery of AV content, such as live or linear television programming and video on demand (VOD) content.
In much of the AV content that is commercially available, captioning data is included; e.g., closed caption signals that are used to display text associated with spoken words in a program, generally at the bottom of a television screen. Captioning data is provided as part of most broadcast, cable and satellite programming, including advertisements.
Various tools are available to consumers who desire to limit or block AV content that they find objectionable; for example, many parents desire to limit or block AV content consumed by their children, in an effort to better mitigate their children's exposure to objectionable content, namely violence, sexual situations, indecent or suggestive language and the like. Some AV content is marked with a rating that indicates appropriateness for children; however, not all AV content is rated. Typical examples of unrated content include advertising content, and content that is not professionally produced. Captioning data has also been used in tools for parental control, and can be useful in determining whether AV content associated with the captioning data is objectionable.